perm filename DTEST.MF[RPR,TEX] blob sn#574412 filedate 1981-03-16 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00007 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	mi=0
C00004 00003	"The letter h"
C00005 00004	"The letter y"
C00007 00005
C00008 00006	e
C00009 00007	r
C00010 ENDMK
C⊗;
mi=0;
new codeoffset; codeoffset=0;
new mc,lbowl,rbowl,rstem,rv,hic;	% quantities used to compute spacing
mc=mi/pu;	% converts to relative units when $\\{mi}=1$
lbowl=.3phh.slant+.5pu;	% used at left of upper-case bowl
rbowl=.7phh.slant-.5pu;	% used at right of upper-case bowl
rstem=phh.slant+(ucs+2sc-1.5)pu;	% used at right of tall stem
rv=phh.slant+(ucs+2sc-1)pu;	% used at right of tall diagonal
hic=1-.5mi;	% used when half the italic correction goes into \\{rtcorr}
new aa,bb,aaa,bbb,spa,spb,spc;	% variables to specify the spen
aa=(sqrt 1.25)(.2pwv.pixels+blacker);
bb=(sqrt 1.25)(.3pw.pixels+blacker);
aaa=1/aa/aa; bbb=1/bb/bb;
spen(aaa+4bbb,4aaa-4bbb,4aaa+bbb,0,0,0,0);

new cor,corr;	% commonly used spacing corrections
cor=phh.slant/pu;
if cor>1: corr=1;
else: corr=cor;
fi;
"The letter h";
call charbegin(`h,10,sc,sc,ph,0,1/3[pe,px].slant+.5pwi+(sc-2)pu);
hpen; x1=x2=good1 2.5u; x3=good1(r-2.5u);
top1y1=h; bot1y2=0;
w1 draw 1..2;	% left stem
call `a hstroke(2,3,4);	% shoulder and right stem
if lcs≠0: call `b sserif(1,1,2,-lcs);	% upper serif
	if 2lcs.u+w1>x3-x1-.5u: new aa; 2aa.u+w1=x3-x1-.5u;
	else: new aa; aa=lcs;
	fi;
	call `c serif(2,1,1,-lcs);
	call `d serif(2,1,1,aa);	% lower left serif
	call `e serif(4,1,3,-aa);
	call `f serif(4,1,3,lcs);	% lower right serif
fi.
"The letter y";
call charbegin(`y,10,sc,.5+sc,px,pd,px.slant+.5pw+(lcs+sc-1.5)pu);
hpen; x1=good1(2.5u-.5(w2-w0)); x4=good0(r-2.5u);
x2-x1=x4-x3; lft0x3=lft1x2+.5del;
top1y1=m; y4=y1; bot1y2=-o;y3=y2;
w1 draw 1..2; w0 draw 2..3;	% left diagonal stroke
rpen#; w1 draw 3..4;	% erase excess at lower right
cpen; lft3x8=lft0x7=round .25u;
bot3y8=-.9d; y7=y8; w3 draw 8;	% bulb
hpen; x6=2u; bot0y6=-d-oo; bot0y5=-.5d;
new aa; x5=aa[x3,x4]; y5=aa[y3,y4];
w0 draw 4..3{x3-x4,y3-y4}..6{-1,0}..7{0,1};	% right diagonal and tail
if lcs≠0: call `a serif(1,1,2,-lcs);
	call `b serif(1,1,2,lcs);	% left serif
	call `c dserif(4,0,3,-lcs);
	call `d dserif(4,0,3,lcs);	% right serif
fi.
e

e

r
e